insert into asm_sgate_estr_dati

select db,protocollo,ric_tipomess,pod,db.nominativo_rag_soc,toponimo_via,prefisso_via,denominazione_via,civico,
co.codice_gruppo_bollettazione gruppo,
ric_tipo_dis tipo_disagio,
ri.RIC_COD_AGEV   codice_agevolazione,
ric_nro_comp numero_componenti,
ric_data_ini_agev,
ric_data_fin_agev,
ric_data_limite,
db.codice_fiscale,
ric_tipo_dom,
 null grossista,
age.esa_esito ,esg.ESg_ESITO ,ric_filename

 from db1.asm_sgate_dati_db db,db1.asm_sgate_esitisgate esg,db1.asm_sgate_richieste ri,db5.contratti co,
 db5.contratti_aggregazioni ca,db5.persone,
  (select ESA_PROTOCOLLO,ESA_ESITO from  db1.asm_sgate_esitiagev union 
 select ESS_PROTOCOLLO,ESS_ESITO from  db1.asm_sgate_esitisegn) age
 
where 
db.protocollo=ri.ric_protocollo
and db.db='DB5'
and esg.esg_protocollo(+)=db.protocollo
--and esg.ESg_ESITO(+)='OK'
and age.esa_protocollo = db.protocollo
--and age.esa_esito<>'OK'
and co.codice_contratto = codice_contratto_corr
and co.codice_gestione = ca.codice_gestione
and co.codice_utente=ca.codice_utente
and co.codice_servizio ='E'
and ri.ric_stato <> 99
and ca.codice_persona_titolare = persone.codice_persona
--and esg.esg_protocollo in(121013903,119805753)
union ALL

select db,protocollo,ric_tipomess,pod,db.nominativo_rag_soc,toponimo_via,prefisso_via,denominazione_via,civico,
co.codice_gruppo_bollettazione gruppo,
ric_tipo_dis tipo_disagio,
ri.RIC_COD_AGEV   codice_agevolazione,
ric_nro_comp numero_componenti,
ric_data_ini_agev,
ric_data_fin_agev,
ric_data_limite,
db.codice_fiscale,
ric_tipo_dom,
persone.nominativo_rag_soc grossista,
age.esa_esito,esg.ESg_ESITO ,ric_filename

 from db1.asm_sgate_dati_db db,db1.asm_sgate_esitisgate esg,db1.asm_sgate_richieste ri,
 db1.contratti co,db1.contratti_aggregazioni ca,db1.persone,
  (select ESA_PROTOCOLLO,ESA_ESITO from  db1.asm_sgate_esitiagev union 
 select ESS_PROTOCOLLO,ESS_ESITO from  db1.asm_sgate_esitisegn) age

where 
db.protocollo=ri.ric_protocollo
and db.db='DB1'
and esg.esg_protocollo(+)=db.protocollo
--and esg.ESg_ESITO(+)='OK'
and age.esa_protocollo = db.protocollo
--and age.esa_esito<>'OK'
and co.codice_contratto = codice_contratto_corr
and co.codice_gestione = ca.codice_gestione
and co.codice_utente=ca.codice_utente
and co.codice_servizio ='E'
and ri.ric_stato <> 99
and ca.codice_persona_titolare = persone.codice_persona

UNION ALL

select 'DBX',ric_protocollo,ric_tipomess,ric_pod,ric_nome nominativo_rag_soc,
'' toponimo_via,'' prefisso_via,ric_indirizzo denominazione_via,0 civico,
'' gruppo,
ric_tipo_dis tipo_disagio,
RIC_COD_AGEV   codice_agevolazione,
ric_nro_comp numero_componenti,
ric_data_ini_agev,
ric_data_fin_agev,
ric_data_limite,
ric_cdf codice_fiscale,
ric_tipo_dom,
null grossista,
age.esa_esito ,ESg_ESITO,ric_filename
 from db1.asm_sgate_esitisgate,db1.asm_sgate_richieste,
(select ESA_PROTOCOLLO,ESA_ESITO,esa_cod_mot_ko,esa_cod_err from  db1.asm_sgate_esitiagev union 
 select ESS_PROTOCOLLO,ESS_ESITO,0,0 from  db1.asm_sgate_esitisegn) age
 
where 
esg_protocollo=ric_protocollo
and esg_esito ='OK'
and  ric_stato <> 99
and age.ESa_PROTOCOLLO=esg_protocollo
and esg_protocollo not in (select protocollo from db1.asm_sgate_dati_db)
